﻿<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
    <AssemblyName>Apache.Ignite.Core</AssemblyName>
    <RootNamespace>Apache.Ignite.Core</RootNamespace>
    <AssemblyOriginatorKeyFile>Apache.Ignite.Core.snk</AssemblyOriginatorKeyFile>
    <SignAssembly>true</SignAssembly>
    <DelaySign>false</DelaySign>

    <IsPackable>true</IsPackable>
    <PackageId>Apache.Ignite</PackageId>
    <Description>Apache Ignite is a distributed database for high-performance computing with in-memory speed.</Description>
    <PackageTags>Apache;Ignite;In-Memory;Distributed;Computing;SQL;NoSQL;Database;Cache;Grid;Map;Reduce;LINQ;linqpad-samples</PackageTags>
    <GenerateDocumentationFile>true</GenerateDocumentationFile>

    <CodeAnalysisRuleSet>..\Apache.Ignite.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="System.Configuration.ConfigurationManager" Version="4.5.0" />
    <PackageReference Include="System.Reflection.Emit" Version="4.7.0" />
    <PackageReference Include="System.Reflection.Emit.Lightweight" Version="4.7.0" />
    <PackageReference Include="Microsoft.Win32.Registry" Version="4.7.0" />

    <!--
    NOTE: Microsoft.CodeAnalysis.NetAnalyzers is the new replacement for FxCopAnalyzers,
    but it has some issues on older SDKs (https://github.com/dotnet/roslyn-analyzers/issues/4776).
    NOTE: Don't upgrade to 3.x - it does not work on some older 2.x SDKs
    -->
    <PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.12" PrivateAssets="all" />
  </ItemGroup>
  <ItemGroup>
    <None Update="IgniteConfigurationSection.xsd">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
    <None Update="IgniteClientConfigurationSection.xsd">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
  </ItemGroup>
  <ItemGroup>
    <Compile Include="..\SharedAssemblyInfo.cs" />
  </ItemGroup>

  <ItemGroup>
    <None Include="..\bin\libs\*.jar" Pack="true" PackagePath="build\output\libs" Link="build\output\libs\%(Filename)%(Extension)" />
    <None Include="Apache.Ignite.targets" Pack="true" PackagePath="build" Link="build\%(Filename)%(Extension)" />
    <None Include="..\..\..\..\config\java.util.logging.properties" Pack="true" PackagePath="build\output\config" Link="build\output\config\%(Filename)%(Extension)" />
    <None Include="NuGet\LINQPad\*.*" Pack="true" PackagePath="linqpad-samples" Link="linqpad-samples\%(Filename)%(Extension)" />
  </ItemGroup>

</Project>
